package com.rpc;

import javafx.util.Pair;
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;

/**
 * 通过rpc为另一模块提供了接口
 */
public interface OilInfoSend extends Remote {
    /** 井口控制信息发送
     * @param wellID 目标井口ID
     * @param data   要发送的数据 :
     *               为2个字节, 这两个字节中，前十位分别代表目标井口的10个阀门，0为关闭，1为闭合
     *               后六位无用，皆设置为0
     * @return 成功发送时，返回true 否则为false
     */
    boolean wellControlData(int wellID, byte[] data) throws RemoteException;

    /**
     * 发送经过允许的ip地址
     * @param ips : pair中 k:ip地址 v:true 添加当前ip地址 false 删除当前ip地址
     */
    void setIpAllowed(List<Pair<String, Boolean>> ips) throws RemoteException;
}
